package com.baichang.taoshunda.dao;

import com.baichang.framework.dao.BaseDao;
import com.baichang.framework.model.Page;
import com.baichang.taoshunda.entity.Carousel;

import java.util.List;
import java.util.Map;

public interface CarouselDao extends BaseDao<Carousel> {
    /**
     * 根据城市获取首页轮播图
     *  @param areaId 城市编号
     * @param type
     * @param lat
     * @param lng    @return
     */
    List<Map<String, Object>> getCarouselByCity(Integer areaId, Integer type, String lat, String lng);

    /**
     * 删除轮播图
     *
     * @param carouselId
     * @return
     */
    int updateStatus(Integer carouselId);

    /**
     * 修改排名
     *
     * @param id
     * @param orderNum
     * @return
     */
    int updateOrderNum(Integer id, Integer orderNum);

    /**
     * 获取商家轮播图信息
     *
     * @param id
     * @return
     */
    Map<String, Object> queryBusInfo(Integer id);

    /**
     * 修改轮播图经纬度
     *
     * @param id
     * @param lat
     * @param lng    @return
     * @param cityId
     */
    int updateCarouselInfo(Integer id, String lat, String lng, Integer cityId);

    /**
     * 查询需要审核的广告位
     *
     * @param businessName
     * @param type
     * @param nowPage
     * @param pageSize     @return
     */
    Page queryAuditingCarosuel(String businessName, Integer type, int nowPage, int pageSize);

    /**
     * 轮播图上传图片
     *
     * @param id
     * @param picture
     * @param pass
     * @param startTime
     * @param endTime   @return
     */
    int addPicture(Integer id, String picture, Integer pass, String startTime, String endTime);

    /**
     * @param id
     * @param pass
     * @return
     */
    int updatePass(Integer id, Integer pass);

    /**
     * 查询最新创建的数据id
     *
     * @return
     */
    Map<String, Object> queryCarouselId();

    /**
     * 查询我的轮播图
     *
     * @param
     * @param
     * @return
     */
    Map<String, Object> queryBusCarouselDetails(String id);

    /**
     * @param busId
     * @param type
     * @return
     */
    Map<String, Object> queryBusCarousel(Integer busId, int type);

    /**
     * 查询同意和拒绝的轮播图
     *
     * @param name
     * @param cityId
     * @param nowPage
     * @param pageSize @return
     */
    Page queryCarousel(String name, Integer cityId, Integer type, int nowPage, int pageSize);

    /**
     * 更换图片
     *
     * @param id
     * @param picture
     * @return
     */
    int replacePicture(Integer id, String picture);

    /**
     * 查询当前商家的轮播图信息
     *
     * @param busId
     * @return
     */
    Map<String, Object> getCarouselById(Integer busId);

    /**
     * @param busId
     * @param code
     * @return
     */
    int updateAuditingStatus(Integer busId, Integer code);

    /**
     * 当前轮播图时间
     *
     * @param busId
     * @param type
     * @return
     */
    List<Map<String, Object>> queryCarouselTime(Integer busId, Integer type);

    /**
     * 查询全部的过往记录
     * @param busId
     * @param type
     * @return
     */
    List<Map<String,Object>> queryAllHistory(Integer busId, Integer type);
}